package com.zmj.sy.mom.srv.aps.bean.vo.nest.newNest;

import cn.hutool.core.date.DateTime;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;

/**
 * @author hd
 * @date 2021/11/19
 * @desc 套料系统领料单obj xml
 */
@Getter
@Setter
@ToString
@JsonIgnoreProperties(ignoreUnknown = true)
@JacksonXmlRootElement(localName = "PicklistLine")
public class NestPlateInfo implements Serializable {
    @JacksonXmlProperty(localName = "PickListItemNo")
    private Integer pickListItemNo;
    @JacksonXmlProperty(localName = "Type")
    private Integer type;
    // 钢板存储位置
    @JacksonXmlProperty(localName = "MaterialCode")
    private String materialCode;
    // 钢板存储位置
    @JacksonXmlProperty(localName = "Storageplace")
    private String storagePlace;
    @JacksonXmlProperty(localName = "Sequence")
    private Integer sequence;
    @JacksonXmlProperty(localName = "Amount")
    private Integer amount;
    @JacksonXmlProperty(localName = "Length")
    private float length;
    @JacksonXmlProperty(localName = "Width")
    private float width;
    // 套料图号
    @JacksonXmlProperty(localName = "Nesting")
    private String nesting;
    // 钢板号
    @JacksonXmlProperty(localName = "MaterialID")
    private String materialId;
    // 下道工作组
    @JacksonXmlProperty(localName = "NextWorkPlace")
    private String nextWorkPlace;
    /**
     * 钢板利用率
     */
    @JacksonXmlProperty(localName = "PlateUsage")
    private Float plateUsage;
    /**
     * 钢板重
     */
    @JacksonXmlProperty(localName = "PlateWeight")
    private Float plateWeight;
    // 希望送货日期
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JacksonXmlProperty(localName = "PlannedStartTime")
    private DateTime plannedStartTime;
    /* @JacksonXmlElementWrapper(useWrapping = false)
    @JacksonXmlProperty(localName = "Parts")
    private List<PickingParts> parts;*/
}
